import { getUserLoginInfo,getCodeToToken } from '@/ajax/index';
import { prowerType } from '@/types/response';
import { removeToken, setToken } from '@/utils/auth';
import { getPermissionList } from '@/utils/getRouterPerms';
export default {
	async usersLoginAction(context: any, data: any) {
		// return new Promise((resolve, reject) => {
		// 	ssoLogin(data)
		// 		.then(async (res: any) => {
		// 			// if (res.succ) {
		// 			// 	context.commit(`SET_USER_INFO`, res.content);
		// 			// 	context.commit(`SET_TOKEN_INFO`, {
		// 			// 		'token': res.access_token,
		// 			// 		'refreshToken': res.refresh_token
		// 			// 	});
		// 			// 	setToken(`DM_tokenAppID`, res.access_token);
		// 			// 	setToken(`DM_tokenAppID_ref`, res.refresh_token);
		// 			// }
		// 			if (res && res.options.token) {
                        
		// 				// context.commit(`SET_USER_INFO`, res.content);
		// 				context.commit(`SET_TOKEN_INFO`, {
		// 					'token': res.options.token,
		// 					'refreshToken': res.options.refreshToken
		// 				});
		// 				setToken(`DM_tokenAppID`, res.options.token);
		// 				setToken(`DM_tokenAppID_ref`, res.options.refreshToken);
		// 			}
		// 			resolve(res);
		// 		})
		// 		.catch(err => {
		// 			reject(err);
		// 		});
		// });
	},
	async getUserInfoAction(context: any, data: any) {
		return new Promise((resolve, reject) => {
			getUserLoginInfo(data)
				.then((res: any) => {
					if (res.succ) {
						const userInfo = JSON.parse(JSON.stringify(res.content));
						delete userInfo.powerAliasTree;
						// const { powerAliasTree } = res.content;
						// menuType  M 系统 C 路由  F 按钮
						const powerAliasTree: Array<prowerType> = [
							{
								'id': `QcnBWgFOEeuG8gJCrBwAAg`,
								'version': 3,
								'createUser': `GLNY-t6ZEemnogBQVsAACA`,
								'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
								'createDate': `2020-09-28 05:48:39`,
								'updateDate': `2020-09-28 06:25:14`,
								'name': `数字空间`,
								'alias': ``,
								'menuType': `M`,
								'path': `/system`,
								'component': ``,
								'icon': `home`,
								'isFrame': false,
								'visible': true,
								'enabled': true,
								'sequence': 1,
								'childList':[
									{
										'id': `nbNEDwFUIGYG8K89rGHAAe`,
										'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
										'name': `工作`,
										'alias': ``,
										'menuType': `C`,
										'path': `/workspace`,
										'component': `Layout`,
										'icon': `workspace`,
										'isFrame': false,
										'visible': true,
										'enabled': true,
										'sequence': 1,
										'version': 2,
										'createUser': `GLNY-t6ZEemnogBQVsAACA`,
										'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
										'createDate': `2020-09-28 05:51:13`,
										'updateDate': `2020-09-28 06:26:16`,
									},
                                    {
										'id': `nbNEDwFUIGYG8K89rGHAAg`,
										'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
										'name': `待实名认证`,
										'alias': ``,
										'menuType': `C`,
										'path': `/noCertified`,
										'component': `Layout`,
										'icon': `home`,
										'isFrame': false,
										'visible': false,
										'enabled': true,
										'sequence': 1,
										'version': 2,
										'createUser': `GLNY-t6ZEemnogBQVsAACA`,
										'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
										'createDate': `2020-09-28 05:51:13`,
										'updateDate': `2020-09-28 06:26:16`,
									}, 
									// {
									// 	'id': `nbNEDwFUIGYG8K89rGHAAh`,
									// 	'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
									// 	'name': `探索`,
									// 	'alias': ``,
									// 	'menuType': `C`,
									// 	'path': `/workspace`,
									// 	'component': `Layout`,
									// 	'icon': `explore`,
									// 	'isFrame': false,
									// 	'visible': true,
									// 	'enabled': true,
									// 	'sequence': 1,
									// 	'version': 2,
									// 	'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'createDate': `2020-09-28 05:51:13`,
									// 	'updateDate': `2020-09-28 06:26:16`,
									// },
									// {
									// 	'id': `nbNEDwFUIGYG8K89rGHAAi`,
									// 	'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
									// 	'name': `星空`,
									// 	'alias': ``,
									// 	'menuType': `C`,
									// 	'path': `/workspace`,
									// 	'component': `Layout`,
									// 	'icon': `starrysky`,
									// 	'isFrame': false,
									// 	'visible': true,
									// 	'enabled': true,
									// 	'sequence': 1,
									// 	'version': 2,
									// 	'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'createDate': `2020-09-28 05:51:13`,
									// 	'updateDate': `2020-09-28 06:26:16`,
									// },
									{
										'id': `nbNEDwFUIGYG8K89rGHAAf`,
										'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
										'name': `空间`,
										'alias': ``,
										'menuType': `C`,
										'path': `/space`,
										'component': `Layout`,
										'icon': `space`,
										'isFrame': false,
										'visible': true,
										'enabled': true,
										'sequence': 1,
										'version': 2,
										'createUser': `GLNY-t6ZEemnogBQVsAACA`,
										'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
										'createDate': `2020-09-28 05:51:13`,
										'updateDate': `2020-09-28 06:26:16`,
									},
									{
										'id': `nbNEDwFUIGYG8K89rGHAAj`,
										'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
										'name': `身份`,
										'alias': ``,
										'menuType': `C`,
										'path': `/identity`,
										'component': `Layout`,
										'icon': `identity`,
										'isFrame': false,
										'visible': true,
										'enabled': true,
										'sequence': 1,
										'version': 2,
										'createUser': `GLNY-t6ZEemnogBQVsAACA`,
										'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
										'createDate': `2020-09-28 05:51:13`,
										'updateDate': `2020-09-28 06:26:16`,
									},
									// {
									// 	'id': `nbNEDwFUIGYG8K89rGHAAe`,
									// 	'fid': `QcnBWgFOEeuG8gJCrBwAAg`,
									// 	'name': `绿色产品管理`,
									// 	'alias': ``,
									// 	'menuType': `C`,
									// 	'path': `/product`,
									// 	'component': `Layout`,
									// 	'icon': `icon-yonghuguanli`,
									// 	'isFrame': false,
									// 	'visible': true,
									// 	'enabled': true,
									// 	'sequence': 1,
									// 	'version': 2,
									// 	'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 	'createDate': `2020-09-28 05:51:13`,
									// 	'updateDate': `2020-09-28 06:26:16`,
									// 	'childList': [
									// 		{
									// 			'id': `JgbcGU7PE78G8g779BwAAe`,
									// 			'fid': `nbNEDwFUIGYG8K89rGHAAe`,
									// 			'name': `评价对象管理`,
									// 			'alias': ``,
									// 			'menuType': `C`,
									// 			'path': `/evaluationList`,
									// 			'component': `/productManage/evaluationList`,
									// 			'icon': ``,
									// 			'isFrame': false,
									// 			'visible': true,
									// 			'enabled': true,
									// 			'sequence': 1,
									// 			'version': 1,
									// 			'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'createDate': `2020-09-28 05:55:02`,
									// 			'updateDate': `2020-09-28 06:26:27`
									// 		},
									// 		{
									// 			'id': `Jgb88U7PE7228G8g779BwAAf`,
									// 			'fid': `JgbcGU7PE78G8g779BwAAe`,
									// 			'name': `评价对象管理详情`,
									// 			'alias': ``,
									// 			'menuType': `C`,
									// 			'path': `/evaluationDetail`,
									// 			'component': `/productManage/evaluationDetail`,
									// 			'icon': ``,
									// 			'isFrame': false,
									// 			'visible': false,
									// 			'enabled': true,
									// 			'sequence': 1,
									// 			'version': 1,
									// 			'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'createDate': `2020-09-28 05:55:02`,
									// 			'updateDate': `2020-09-28 06:26:27`
									// 		},
									// 		{
									// 			'id': `Jgb88U7PE78G8g779BwAAf`,
									// 			'fid': `nbNEDwFUIGYG8K89rGHAAe`,
									// 			'name': `绿评申请`,
									// 			'alias': ``,
									// 			'menuType': `C`,
									// 			'path': `/applyList`,
									// 			'component': `/groupManage/groupAddEdit`,
									// 			'icon': ``,
									// 			'isFrame': false,
									// 			'visible': true,
									// 			'enabled': true,
									// 			'sequence': 1,
									// 			'version': 1,
									// 			'createUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'updateUser': `GLNY-t6ZEemnogBQVsAACA`,
									// 			'createDate': `2020-09-28 05:55:02`,
									// 			'updateDate': `2020-09-28 06:26:27`
									// 		}
									// 	]
									// }
								]
							}
						];
						const list = powerAliasTree.filter(r => r.name === `数字空间`);
						if (userInfo.status) {
							context.commit(`SET_USER_STATUS`, 1);
						}else{
							context.commit(`SET_USER_STATUS`, 0);
						}
						if (list.length > 0 && list[0].childList) {
							userInfo.powerAliasTree = list[0].childList
							const { permsArr, routerList } = getPermissionList(list[0].childList);
							context.commit(`SET_PROWER_ALIAS_TREE`, userInfo.powerAliasTree);
							context.commit(`SET_USER_INFO`, userInfo);
							context.commit(`SET_ROTURE_LIST`, routerList);
							context.commit(`SET_PROWER_LIST`, permsArr);
						}
					}
					resolve(res);
				})
				.catch(err => {
					reject(err);
				});
		});
	},
	async getCodeToTokenAction(context: any, data: any) {
		await getCodeToToken(data)
			.then(async (res: any) => {
				console.log(res);
				if (res.succ) {
					await context.commit(`SET_TOKEN_INFO`, res.content.token);
					setToken(`token`, res.content.token);
				}
			})
			.catch((err:any) => {
				console.log(err);
			});
	},
	logout(context: any) {
		removeToken(`token`);
		removeToken(`token_ref`);
		context.commit(`SET_USER_INFO`, null);
		context.commit(`SET_TOKEN_INFO`, { 'token': ``, 'refreshToken': `` });
	}
};
